<html>
<head><meta charset="utf-8"><title>meeting 2021-05-19 · t-compiler/wg-rfc-2229 · Zulip Chat Archive</title></head>
<h2>Stream: <a href="https://rust-lang.github.io/zulip_archive/stream/189812-t-compiler/wg-rfc-2229/index.html">t-compiler/wg-rfc-2229</a></h2>
<h3>Topic: <a href="https://rust-lang.github.io/zulip_archive/stream/189812-t-compiler/wg-rfc-2229/topic/meeting.202021-05-19.html">meeting 2021-05-19</a></h3>

<hr>

<base href="https://rust-lang.zulipchat.com">

<head><link href="https://rust-lang.github.io/zulip_archive/style.css" rel="stylesheet"></head>

<a name="239486945"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189812-t-compiler/wg-rfc-2229/topic/meeting%202021-05-19/near/239486945" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/189812-t-compiler/wg-rfc-2229/topic/meeting.202021-05-19.html#239486945">(May 19 2021 at 19:59)</a>:</h4>
<p>Oh shoot, I just realized <span class="user-group-mention" data-user-group-id="1175">@WG-rfc-2229</span> that I can't make the meeting today!</p>



<a name="239487003"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189812-t-compiler/wg-rfc-2229/topic/meeting%202021-05-19/near/239487003" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/189812-t-compiler/wg-rfc-2229/topic/meeting.202021-05-19.html#239487003">(May 19 2021 at 20:00)</a>:</h4>
<p>I can probably do async chat during the hour though</p>



<a name="239487024"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189812-t-compiler/wg-rfc-2229/topic/meeting%202021-05-19/near/239487024" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/189812-t-compiler/wg-rfc-2229/topic/meeting.202021-05-19.html#239487024">(May 19 2021 at 20:00)</a>:</h4>
<p>(I have another overlapping call)</p>



<a name="239487110"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189812-t-compiler/wg-rfc-2229/topic/meeting%202021-05-19/near/239487110" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Aman Arora <a href="https://rust-lang.github.io/zulip_archive/stream/189812-t-compiler/wg-rfc-2229/topic/meeting.202021-05-19.html#239487110">(May 19 2021 at 20:00)</a>:</h4>
<p>I didn't get too much time last week to work on the profiling, we can just meet next week</p>



<a name="239487138"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189812-t-compiler/wg-rfc-2229/topic/meeting%202021-05-19/near/239487138" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Aman Arora <a href="https://rust-lang.github.io/zulip_archive/stream/189812-t-compiler/wg-rfc-2229/topic/meeting.202021-05-19.html#239487138">(May 19 2021 at 20:00)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span></p>



<a name="239487259"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189812-t-compiler/wg-rfc-2229/topic/meeting%202021-05-19/near/239487259" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/189812-t-compiler/wg-rfc-2229/topic/meeting.202021-05-19.html#239487259">(May 19 2021 at 20:01)</a>:</h4>
<p>ok, that's fine w/ me</p>



<a name="239533719"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189812-t-compiler/wg-rfc-2229/topic/meeting%202021-05-19/near/239533719" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Aman Arora <a href="https://rust-lang.github.io/zulip_archive/stream/189812-t-compiler/wg-rfc-2229/topic/meeting.202021-05-19.html#239533719">(May 20 2021 at 04:43)</a>:</h4>
<p>was there anything for us from the lang team sync?</p>



<a name="239560956"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189812-t-compiler/wg-rfc-2229/topic/meeting%202021-05-19/near/239560956" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/189812-t-compiler/wg-rfc-2229/topic/meeting.202021-05-19.html#239560956">(May 20 2021 at 09:34)</a>:</h4>
<p><span class="user-mention" data-user-id="281950">@Aman Arora</span> trying to remember :) not <em>really</em>, people were curious to see the results regarding the size of closures</p>



<a name="239560963"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189812-t-compiler/wg-rfc-2229/topic/meeting%202021-05-19/near/239560963" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/189812-t-compiler/wg-rfc-2229/topic/meeting.202021-05-19.html#239560963">(May 20 2021 at 09:34)</a>:</h4>
<p>as am I :)</p>



<a name="239560980"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189812-t-compiler/wg-rfc-2229/topic/meeting%202021-05-19/near/239560980" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/189812-t-compiler/wg-rfc-2229/topic/meeting.202021-05-19.html#239560980">(May 20 2021 at 09:34)</a>:</h4>
<p>we were also discussing how hard it would be to do a "rewrite" to a more optimized form</p>



<a name="239561000"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189812-t-compiler/wg-rfc-2229/topic/meeting%202021-05-19/near/239561000" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/189812-t-compiler/wg-rfc-2229/topic/meeting.202021-05-19.html#239561000">(May 20 2021 at 09:35)</a>:</h4>
<p>(hmm, actually, I'm thinking about that-- it might not be as hard as I initially thought)</p>



<a name="239809157"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189812-t-compiler/wg-rfc-2229/topic/meeting%202021-05-19/near/239809157" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Aman Arora <a href="https://rust-lang.github.io/zulip_archive/stream/189812-t-compiler/wg-rfc-2229/topic/meeting.202021-05-19.html#239809157">(May 21 2021 at 20:31)</a>:</h4>
<p>So I'm not sure if <code>create_fn_mono_items</code> is the best place for doing the size testing. It seems like we only call that for items that need monomorphized and not on all items. I suppose this isn't the worst because</p>
<p>I'd also need to figure out how to create an instace on the spot, because the closure types(before and after 2229) I constructed are stored outside of how the data is pipelined.</p>



<a name="239809203"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189812-t-compiler/wg-rfc-2229/topic/meeting%202021-05-19/near/239809203" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Aman Arora <a href="https://rust-lang.github.io/zulip_archive/stream/189812-t-compiler/wg-rfc-2229/topic/meeting.202021-05-19.html#239809203">(May 21 2021 at 20:32)</a>:</h4>
<p>So that I can call polymorphize</p>



<a name="239982106"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189812-t-compiler/wg-rfc-2229/topic/meeting%202021-05-19/near/239982106" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Aman Arora <a href="https://rust-lang.github.io/zulip_archive/stream/189812-t-compiler/wg-rfc-2229/topic/meeting.202021-05-19.html#239982106">(May 23 2021 at 22:19)</a>:</h4>
<p>I'm not sure how easy this will be to do for where generics are involved. At least from the looks of it I'd have to rewrite/duplicate a lot of code around checking what generics are unused</p>



<a name="239982220"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189812-t-compiler/wg-rfc-2229/topic/meeting%202021-05-19/near/239982220" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Aman Arora <a href="https://rust-lang.github.io/zulip_archive/stream/189812-t-compiler/wg-rfc-2229/topic/meeting.202021-05-19.html#239982220">(May 23 2021 at 22:21)</a>:</h4>
<p>At least the way I have done things right now, I create two closure tys, one before and after the feature. Really just need to store after (but I do both right now).</p>
<p>And then I read them where we monomorph the closure</p>



<a name="240049938"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189812-t-compiler/wg-rfc-2229/topic/meeting%202021-05-19/near/240049938" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/189812-t-compiler/wg-rfc-2229/topic/meeting.202021-05-19.html#240049938">(May 24 2021 at 13:21)</a>:</h4>
<p>another option would be to do it at code generation time</p>



<a name="240049954"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189812-t-compiler/wg-rfc-2229/topic/meeting%202021-05-19/near/240049954" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/189812-t-compiler/wg-rfc-2229/topic/meeting.202021-05-19.html#240049954">(May 24 2021 at 13:21)</a>:</h4>
<p>either way, though, you are correct that it will only measure the size of closures we actually <em>instantiate</em></p>



<a name="240049959"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189812-t-compiler/wg-rfc-2229/topic/meeting%202021-05-19/near/240049959" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/189812-t-compiler/wg-rfc-2229/topic/meeting.202021-05-19.html#240049959">(May 24 2021 at 13:21)</a>:</h4>
<p>it won't work well on libraries</p>



<a name="240049977"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189812-t-compiler/wg-rfc-2229/topic/meeting%202021-05-19/near/240049977" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/189812-t-compiler/wg-rfc-2229/topic/meeting.202021-05-19.html#240049977">(May 24 2021 at 13:22)</a>:</h4>
<p>it'd work better on executables</p>



<hr><p>Last updated: Aug 07 2021 at 22:04 UTC</p>
</html>